export function kiwa(s: string) {
  let v00 = (3 ^ 5) << 4 ^ 5 << 1;
  let v01 = (2 ^ 5) << 4 ^ 4 << 1;
  let v02 = 5 << 3 ^ 4;
  let v03 = s.length;
  const v04 = Array.from({ length: v03 }).fill(' ');
  const v5 = v03 - 1;
  v03 = v02;
  let v3;
  v02 = v3 = v5;
  const v1 = v04;
  const v4 = v03;
  v01 = v00;
  v00 = v02;
  for (let v2 = v01; v00 >= 0; v00 = v3) {
    v01 = v3;
    const v6 = s.charAt(v3);
    --v3;
    v1[v01] = String.fromCharCode(v6.charCodeAt(0) ^ v2);
    if (v3 < 0) {
      break;
    }
    v02 = v3--;
    v1[v02] = String.fromCharCode(s.charAt(v02).charCodeAt(0) ^ v4);
  }
  return v1.join('');
}
